function uploadWithSDK(token, putExtra, config, domain, types) {
  // 切换tab后进行一些css操作
  // controlTabDisplay("sdk");
  var arr = []//base64
  var fileArr = []//file
  var timesKey = []//时间戳
  var boards = []
  $("#select2").unbind("change").bind("change",function(){
    var files = this.files
    console.log(fileArr)
      console.log(files)
    for(var j=0;j<files.length;j++){
      var file = this.files[j];
        // var names = file.name
      var finishedAttr = [];
      // eslint-disable-next-line
      var compareChunks = [];
      var observable;
        var timestamp;
        console.log(timestamp)
      if (file) {
        console.log(file)
        var key = file.name;
          console.log(key)

        var rank1 = key.indexOf('.');
        var rank3 = rank1;
        var rank = key.slice(0,rank3);

        if(fileArr.length<1){
          timestamp = Date.parse(new Date()) + j;
          timesKey.push(timestamp)
          fileArr.push(file)
          arr.push(rank)
          // filefileArr.push(file)
        }else{
          var pans = true;
          for (var i = 0; i < fileArr.length; i++) {
            if(fileArr[i].name == file.name){
              pans = false;
              alert('对不起，您已经添加过这张图片了');
              return false;
            }else{
              pans = true;
            }
          }
          if(pans){
            timestamp = Date.parse(new Date()) + j;
            timesKey.push(timestamp)
            arr.push(rank)
            fileArr.push(file)
          }else{
            alert('对不起，您已经添加过这张图片了');
              return false;
          }
        }
        // fileArr.push(file)
        var fr = new FileReader();
        // var names = file.name
        // var rank1 = names.indexOf('.');
        // var rank3 = rank1;
        // var rank = names.slice(rank3);
        // var timestamp = Date.parse(new Date());
        // file.name = "goods"+ timestamp + rank
        fr.readAsDataURL(file);
        // console.log(file)
        // console.log(fr)
        // console.log(fr.result)
        // fr.onload = function(){ 
        // // console.log(key)
        // console.log(file)


        //   var base64 = this.result;
        //   if(arr.length<1){
        //     arr.push(base64)
        //     // fileArr.push(file)
        //   }else{
        //     var pan = true;
        //     for (var i = 0; i < arr.length; i++) {
        //       if(arr[i] == base64){
        //         pan = false;
        //         alert('对不起，您已经添加过这张图片了');
        //         return false;
        //       }else{
        //         pan = true;
        //         // arr.push(base64)
        //       }
        //     }
        //     if(pan){
        //       arr.push(base64)
        //       // fileArr.push(file)
        //     }else{
        //       alert('对不起，您已经添加过这张图片了');
        //         return false;
        //     }
        //   }
          
          // 添加上传dom面板
          var board = addUploadBoard(file, config, key,'base64', types, "");
          boards.push(board)
          console.log($(".del"))

          // var delss = document.querySelector("#del")
          dels($(".del"))
          console.log(board)
          if (!board) {
            return;
          }
        // }
      }
    }
    // files.forEach(function(ind,fil){
    //   console.log(ind,fil)
    // })
  })
  function dels(dele){
    Array.from(dele).forEach(function(doma,domb){
      doma.onclick = function(){
        var base64s = doma.parentNode.getAttribute("base64s")
        // console.log(b.parentNode.getAttribute("base64s"))
        arr.splice(arr.indexOf(base64s,0),1)
        fileArr.splice(arr.indexOf(base64s,0),1)
        boards.splice(arr.indexOf(base64s,0),1)
        timesKey.splice(arr.indexOf(base64s,0),1)

        doma.parentNode.parentNode.remove()

      }
    })

  }
   function delQiniu(dele,type){
    Array.from(dele).forEach(function(doma,domb){
      doma.onclick = function(){
        console.log(doma.getAttribute("cid"),type)
        $.ajax({
          url: "https://minitest.17jxyx.com/api/v1/file/delete?img_id="+doma.getAttribute("cid")+"&type="+type,
          type:"delete",
          contentType:"application/json",
          dataType:"json",
          beforeSend: function(request) {
              request.setRequestHeader("token",window.base.getLocalStorage('token'));
          },
          success: function(res){
            console.log(res)
            doma.parentNode.parentNode.remove()
          },
          error: function(res){
            console.log(res)
          },

        })
      }
    })

  }
  $(".uploading").click(function(){
    // dels($(".del"))
    // console.log($(".del"))
    var non = document.querySelectorAll("#del")
    Array.from(non).forEach(function(domc,domd){
      console.log(domc)
      domc.classList.add("cang")
    })

    // $("#del").each(function(dela,delb){
    //       console.log(delb)
    //   $(delb).css("dispaly","none")
    //   // delb.style.dispaly = "none"
          
    // })
    
    var delsQi = []
    fileArr.forEach(function(dom,index){
      boards.forEach(function(boardOne,v){
          if( v == index){
        
           // putExtra.params["x:name"] = key.split(".")[0];
        putExtra.params["x:name"] = "goods"
        console.log(putExtra.params["x:name"])
        boardOne.start = true;
        var dom_total = $(boardOne)
          .find("#totalBar")
          .children("#totalBarColor");

    //     // 设置next,error,complete对应的操作，分别处理相应的进度信息，错误信息，以及完成后的操作
        var error = function(err) {
          // boardOne.start = true;
          // $(boardOne).find(".control-upload").text("继续上传");
          console.log(err);
          alert("上传出错")
        };

        var complete = function(res) {
          // delsQi.push(res)
          // if(delsQi.length >= arr.length){
          //   console.log(delsQi)
          // }

          if(res.name != ''){
            var keys = res.name; 
            var ranks1 = keys.indexOf('.');
            var ranks3 = ranks1;
            var ranks = keys.slice(0,ranks3);
             $(".tuDiv").each(function(tuDiva,tuDivb){
              console.log(tuDiva,tuDivb)
              // tuDivb.onclick = function(){
                console.log(tuDivb.children[0].getAttribute("did"))
                if(tuDivb.children[0].getAttribute("did") == res.name){
                    console.log(tuDivb.children[0].children[1])
                    tuDivb.children[0].children[1].innerHTML = "上传完成"
                    tuDivb.children[0].children[2].setAttribute("cid", res.img_id);
                    tuDivb.children[0].children[2].classList.remove("cang")
                    delQiniu($(".del"),types)
                    // dels($(".del"))
                }
              // }
            })
              
          }

          console.log(res)
          // $(boardOne)
          //   .find("#totalBar")
          //   .addClass("hide");
          // $(boardOne)
          //   .find(".control-container")
          //   .html(
          //     "<p><strong>Hash：</strong>" +
          //       res.hash +
          //       "</p>" +
          //       "<p><strong>Bucket：</strong>" +
          //       res.bucket +
          //       "</p>"
          //   );
          if (res.key && res.key.match(/\.(jpg|jpeg|png|gif)$/)) {
            console.log("dasdasdas")
            imageDeal(boardOne, res.key, domain);
          }
        };

        var next = function(response) {
          var chunks = response.chunks||[];
          var total = response.total;
          // console.log(chunks,total)
          // 这里对每个chunk更新进度，并记录已经更新好的避免重复更新，同时对未开始更新的跳过
          for (var i = 0; i < chunks.length; i++) {
            if (chunks[i].percent === 0 || finishedAttr[i]){
              continue;
            }
            if (compareChunks[i].percent === chunks[i].percent){
              continue;
            }
            if (chunks[i].percent === 100){
              finishedAttr[i] = true;
            }
            $(boardOne)
              .find(".fragment-group li")
              .eq(i)
              .find("#childBarColor")
              .css(
                "width",
                chunks[i].percent + "%"
              );
          }
          // $(boardOne)
          //   .find(".speed")
          //   .text("进度：" + total.percent + "% ");
          // dom_total.css(
          //   "width",
          //   total.percent + "%"
          // );

          compareChunks = chunks;
        };

        var subObject = { 
          next: next,
          error: error,
          complete: complete
        };
        var subscription;
        // var cs = dom
        // console.log(cs)
        // console.log(cs.name)
        // cs.name = "dsffsd.jpg"
        // console.log(cs.name)
        console.log(putExtra)
        console.log(config)
        var ca={}
        var names = dom.name
        var rank1 = names.indexOf('.');
        var rank3 = rank1;
        var rank = names.slice(rank3);
        var timetamp;
        timesKey.forEach(function(x,y){
          if(y==index){
            // timetamp = hex_md5(x);
            timetamp = x;

          }
        })
        // var timestamp = Date.parse(new Date()) + index;
        // var timetamp = hex_md5(timestamp);
// timesKey
        // var reader = new FileReader();
        // reader.readAsDataURL(dom);
        // var URL = URL || webkitURL;
        // var blob = URL.createObjectURL(dom);

        // // 构造新File对象
        // var aafile = new File([blob ], ""+types+timetamp+rank);
        //         // fileList[i].name=date11+fileList[i].name

        // // for(var key in dom){
        // //   if(key == 'name'){
        // //     dom[key] == "hhhh"
        // //   }
        // //   ca[key] = dom[key]
        // //   // cs.key = dom[key]
        // //   // console.log(key,dom[key])
        // // }
        // console.log(aafile)
        var tok = window.base.getLocalStorage('token')
        var toks = tok.slice(10,30);
        var key = types+"/"+timetamp+index+toks+rank
        console.log(dom.name,key)

    //     // 调用sdk上传接口获得相应的observable，控制上传和暂停
        observable = qiniu.upload(dom, key, token, putExtra, config);
    //     // console.log(arr)
    //     // console.log($(".del"))
    //     $(".del")
    //     .each(function(a,b){
    //       // console.log(a,b)
    //       b.onclick = function(){
    //         var base64s = b.parentNode.getAttribute("base64s")
    //         // console.log(b.parentNode.getAttribute("base64s"))
    //       arr.splice(arr.indexOf(base64s,0),1)
    //         b.parentNode.parentNode.remove()

    //       }
    //     })
    //     $(".shiyan").click(function(){
    //       console.log(1111111)
    //     })
    //     $(".uploading").click(function(){
    //       $(".control-upload-"+types).each(function(d,f){
    //         $(f).trigger("click")
    //       })
    //       // $(".shiyan").trigger("click")
    //       // console.log(222222222222)

    //       // console.log($(".control-upload"))
    //     })

        // $(boardOne)
        //   .find("."+"control-upload-"+types)
        //   .on("click", function() {
        //      $(boardOne)
        //     .find("#del")
        //     .addClass("hide");
        //     console.log(boardOne.start)
        //     console.log(subObject)
        //     console.log(subscription)

    //         // if(boardOne.start){
    //         //   $(this).text("暂停上传");
    //         //   boardOne.start = false;
              subscription = observable.subscribe(subObject);
    //         // }else{
    //         //   boardOne.start = true;
    //         //   $(this).text("继续上传");
    //           // subscription.unsubscribe();
    //         // }
          // });

    // console.log(dom,index)
      }
    })
    })
    
  })
}
